M y S Q L - Structured Query Language
7. DB-tabellen bearbeiten
7.1 CREATE - DB-tabelle erzeugen
Mit dieser anweisung wird eine neue DB-tabelle erzeugt, bei erfolgreicher ausführung gibt die funktion query den wert true zurück. Für die anweisung gibt es eine unzahl von argumenten, hier werden nur die allernotwendigsten aufgeführt, die man benötigt um eine ganz einfache tabelle aufzubauen. Bisher ist noch kein wirkicher bedarf für mehr aufgetreten.
CREATE TABLE | [ IF NOT EXISTS ]
tabelle (spalte eigenschaften
[, spalte eigenschaften ] . . . [, UNIQUE KEY (spalte) ] ) ENGINE= MyISAM DEFAULT CHARSET=latin1 | utf8 |
IF NOT EXISTS | diese angabe sollte man machen, für den fall, dass es die tabelle schon gibt. |
tabelle | name der tabelle, die erzeugt werden soll. |
definition einer spalte die definition der spalten ist in klammern eingeschlossen, mehrere definitionen werden durch komma getrennt. | |
spalte | name einer spalte, der name muß in der tabelle eindeutig sein |
eigenschaften | datentyp NULL | NOT NULL |
DEFAULT NULL | DEFAULT wert [ AUTO_INCREMENT ] [ UNIQUE ] |
datentyp | datentyp der spalte (vgl. 1.2 datentypen) |
NULL | beim erzeugen der zeile darf für die spalte kein wert angegeben werden |
NOT NULL | beim erzeugen der zeile muss für die spalte ein wert angegeben werden |
DEFAULT NULL | wenn beim erzeugen der zeile für die spalte kein wert angegeben ist gilt der wert NULL |
DEFAULT wert | wenn beim erzeugen der zeile für die spalte kein wert angegeben ist gilt dieser wert |
AUTO_INCREMENT | beim erzeugen der zeile wird der bisher höchste in der spalte erreichte wert um eins erhöht und eingetragen. Die angabe DEFAULT wert führt zu einem fehler, die anderen werden ignoriert. |
UNIQUE | der wert in dieser spalte darf nur in einer zeile auftreten |
weitere angaben | |
UNIQUE KEY | alternative für die angabe UNIQUE in den eigenschaften |
ENGINE= | MyISAM DEFAULT was das bedeutet ist nicht bekannt, aber man muss es angeben |
CHARSET= | bestimmt den zeichensatz der daten für die
DB-tabelle latin1 bedeutet Ansicode, utf8 bedeutet Unicode. Empfohlen wird Unicode, denn bei Ansicode kann es mit geschlossenen umlauten und einigen sonderzeichen probleme geben. (siehe 8.4 besonderheiten). |
beispiel
es werden nur die anweisungen gezeigt, die zum erzeugen der DB nötig sind,
die anweisungen
für die anzeige siehe kapitel 4.4
Das ergebnis wird mit SHOW COLUMNS angezeigt (vgl. 4.4).